package cn.iocoder.yudao.module.system.controller.admin.gugu.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
 * 历年高考高校录取分数线数据 Update Request VO
 */
@Schema(description = "管理后台 - 历年高考高校录取分数线数据更新 Request VO")
@Data
public class CollegeScoreUpdateReqVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
    @NotNull(message = "主键ID不能为空")
    private Long id;

    @Schema(description = "招生的省份", requiredMode = Schema.RequiredMode.REQUIRED, example = "江苏")
    @NotNull(message = "招生省份不能为空")
    private String province;

    @Schema(description = "咕咕数据平台高校唯一ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "uuid123")
    @NotNull(message = "高校唯一ID不能为空")
    private String schoolUuid;

    @Schema(description = "高校名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "北京大学")
    @NotNull(message = "高校名称不能为空")
    private String collegeName;

    @Schema(description = "招生年份", requiredMode = Schema.RequiredMode.REQUIRED, example = "2024")
    @NotNull(message = "招生年份不能为空")
    private Integer year;

    @Schema(description = "录取最高分", example = "680")
    private String highestScore;

    @Schema(description = "录取平均分", example = "650")
    private String averageScore;

    @Schema(description = "录取最低分", example = "620")
    private String lowestScore;

    @Schema(description = "录取最低位次", example = "1000")
    private String lowestRank;

    @Schema(description = "录取省控线", example = "500")
    private String provincialControlLine;

    @Schema(description = "招生类型", example = "普通类")
    private String enrollmentType;

    @Schema(description = "选测等级（特定省）", example = "A+A")
    private String selectionLevel;

    @Schema(description = "录取批次", example = "本科一批")
    private String admissionBatch;

    @Schema(description = "文科、理科或综合", example = "理科")
    private String typeName;

    @Schema(description = "选科要求", example = "物理+化学")
    private String courseSelection;

    @Schema(description = "专业组", example = "01组")
    private String courseSelectionName;

    @Schema(description = "学校类型，如公办、民办", example = "公办")
    private String schoolType;

    @Schema(description = "高校所在的城市", example = "北京")
    private String schoolInCity;

    @Schema(description = "是否为985院校", example = "true")
    private Boolean is985;

    @Schema(description = "是否为211院校", example = "true")
    private Boolean is211;

    @Schema(description = "是否为双一流院校", example = "true")
    private Boolean isDualClass;

    @Schema(description = "高校logo", example = "http://example.com/logo.png")
    private String coverImage;
}
